Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Over at cucumber/common#250 there is a discussion about adding a
Rule
keyword to Gherkin. This pull-request should not be merged - it's only here for illustration and discussion.I wanted to get a feel for what this would be like, so I wrote a simple RSpec example for our familiar Shouty codebase.
If we were to add the
Rule
keyword to Gherkin, we could write this instead:This brings the Gherkin structure closer to Example Mapping.
It also makes it possible to (optionally) test the rule with a property based tool:
Apart from changing the Gherkin grammar to allow for this, I don't think this would require a massive change in Cucumber itself. The rule can be thought of a 1-step scenario that (conventionally) uses a property based testing in its body.